When testing various devices, it is important to make sure that testing mimics real world scenarios and conditions. For example, when testing storage devices, it may be necessary to mimic a typical workload (e.g., an amount of work that is processed or handled by a device under test (DUT)). Conventional testing devices may provide predefined workloads for testing purposes. However, such workloads are limited and generally do not cover all scenarios that customers (e.g., storage device manufacturers or service providers) may want to test. For example, some customers may want to test device or resource usage or distribution that appears random and/or is unpredictable to an observer but that also meets other requirements or criteria, such as unique values and/or excluding or including certain values. While random number generation algorithms exist, such algorithms generally do not meet the other requirements that a tester may desire. Further, modifying existing random number generation algorithms to meet these requirements is cumbersome and time intensive.
Accordingly, in light of these difficulties, a need exists for improved methods, systems, and computer readable media for selecting numbers from multiple ranges.